package com.du.web.sample.util.water;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.awt.*;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Serializable;


/**
 * @desc:
 * @author: shuangdu
 * @date: 2021/9/15
 * @since: 1.8
 */
@Data
@Accessors(chain = true)
@NoArgsConstructor
public class WaterMakeParam implements Serializable {
    // 输入流
    private InputStream fileInputStream;
    private InputStream typeInputStream;
    private InputStream waterInputStream;
    // 输出流
    private OutputStream outputStream;
    // 内容
    private String waterContent;
    // 输出路径
    private String outPath;
    // 文件名称
    private String fileName;
    // 旋转角度 默认 -15 注意：不同旋转角度 旋转时x，y值不同
    private int degree = -15;
    // 字体大小
    private int fontSize = 35;
    // 水印透明度 默认为1.0  值越小颜色越浅
    private float alpha = 1.0f;
    // 颜色
    private Color color;
    // 图片格式类型 JPG/PNG
    private PicFormatName picFormatName = PicFormatName.PNG;
    // 文件后缀
    private String extName;
    // 输出文件名称
    private String outFileName;


    public enum PicFormatName {
        JPG,
        PNG;

        PicFormatName() {};
    }

}
